package com.sqfw.project.wp.service;

import java.util.List;

import com.sqfw.framework.web.domain.TreeSelect;
import com.sqfw.project.wp.domain.SysCode;
import com.sqfw.project.wp.domain.WpTreeSelect;

/**
 * 工单字典表Service接口
 * 
 * @author lx
 * @date 2023-06-07
 */
public interface ISysCodeService 
{
    /**
     * 查询工单字典表
     * 
     * @param autoId 工单字典表主键
     * @return 工单字典表
     */
    public SysCode selectSysCodeByAutoId(Long autoId);

    /**
     * 查询工单字典表列表
     * 
     * @param sysCode 工单字典表
     * @return 工单字典表集合
     */
    public List<SysCode> selectSysCodeList(SysCode sysCode);

    /**
     * 新增工单字典表
     * 
     * @param sysCode 工单字典表
     * @return 结果
     */
    public int insertSysCode(SysCode sysCode);

    /**
     * 修改工单字典表
     * 
     * @param sysCode 工单字典表
     * @return 结果
     */
    public int updateSysCode(SysCode sysCode);

    /**
     * 批量删除工单字典表
     * 
     * @param autoIds 需要删除的工单字典表主键集合
     * @return 结果
     */
    public int deleteSysCodeByAutoIds(Long[] autoIds);

    /**
     * 删除工单字典表信息
     * 
     * @param autoId 工单字典表主键
     * @return 结果
     */
    public int deleteSysCodeByAutoId(Long autoId);

    List<WpTreeSelect> selectSysCodeTreeList(SysCode sysCode);

    List<WpTreeSelect> selectSysCodeListByNodetypes(SysCode sysCode);

    List<SysCode> selectSysCodeListToBusiness(SysCode sysCode);

    //获取class1  2  3  4
    List<SysCode> selectSysCodeTreeListByDetail(SysCode sysCode);

    List<SysCode> selectSysCodeClass1List(String nodetype,List<Long> pids);

    /**
     * 查询特定的业务分类
     */
    List<WpTreeSelect> getSpecificCodeTree();

}
